package com.asset.util;

import lombok.Getter;

/**
 * 资产异常枚举
 * @author 11725
 */
@Getter
public enum AssetExceptionEnum {
    /** 用户名或密码错误 */
    USERNAME_OR_PASSWORD_ERROR(401, "用户名或密码错误"),
    /** 用户未登录 */
    USER_NOT_LOGGED_IN(403, "用户未登录"),
    /** 品牌不存在 */
    BRAND_NOT_FOUND(404, "无匹配的品牌信息"),
    /** 分类不存在或级别有误 */
    CATEGORY_INVALID(404, "无效的分类信息"),
    /** 部门不存在 */
    DEPARTMENT_NOT_FOUND(404, "无匹配的部门信息"),
    /** 仓库不存在或所属部门有误 */
    DEPOSITORY_INVALID(404, "无效的仓库信息"),
    /** 资产不存在 */
    ASSET_NOT_FOUND(404, "无匹配的资产信息"),
    /** 资产信息更新失败 */
    ASSET_UPDATE_ERROR(400, "资产信息更新失败"),
    /** 资产预定失败 */
    ASSET_RESERVE_ERROR(400, "资产预定失败"),
    /** 资产状态更新失败 */
    ASSET_CHANGE_ERROR(400, "资产状态更新失败"),
    /** 用户信息不存在 */
    USER_NOT_FOUND(404, "用户信息不存在"),
    /** 采购清单更新失败 */
    PURCHASE_DETAIL_UPDATE_FAIL(400, "采购清单更新失败"),
    /** 采购记录不存在 */
    PURCHASE_INFO_NOT_FOUND(404, "采购记录不存在"),
    /** 采购记录审批失败 */
    PURCHASE_STATUS_UPDATE_FAIL(400, "采购记录审批失败"),
    /** 采购记录状态不匹配 */
    PURCHASE_INFO_STATUS_ERROR(400, "采购记录状态不匹配"),
    /** 资产状态有误 */
    ASSET_STATUS_ERROR(400, "资产状态有误"),
    /** 资产状态不可用 */
    ASSET_STATUS_IS_DISABLED(400, "资产状态不可用"),
    /** 处置记录不存在 */
    HANDLE_RECORD_NOT_FOUND(404, "处置记录不存在"),
    /** 处置记录状态有误 */
    HANDLE_RECORD_STATUS_ERROR(400, "处置记录状态有误"),
    /** 处置记录状态更新失败 */
    HANDLE_RECORD_STATUS_UPDATE_FAIL(400, "处置记录状态更新失败"),
    /** 上级分类不存在 */
    PARENT_CATEGORY_NOT_FOUND(404, "上级分类不存在"),
    /** 统计参数有误 */
    COUNT_PARAM_ERROR(400, "统计参数有误"),
    /** 部门信息更新失败 */
    DEPARTMENT_INFO_UPDATE_FAIL(400, "部门信息更新失败"),
    /** 仓库信息更新失败 */
    DEPOSITORY_INFO_UPDATE_FAIL(400, "仓库信息更新失败");

    private Integer status;
    private String message;

    AssetExceptionEnum(Integer status, String message) {
        this.status = status;
        this.message = message;
    }
}
